一般平时安装MySQL都是源码包安装的,但是由于它的编译需要很长的时间,所以建议安装二进制免编译包。可以到MySQL官方网站去下载,也可以到comsenz官方网站下载,还有各大镜像站下载。
下载安装包,并安装依赖包
1 2
| wget http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-5.7.12-linux-glibc2.5-x86_64.tar.gz yum -y install gcc-c++ ncurses-devel cmake make perl gcc autoconf automake zlib libxml libgcrypt libtool bison
|
解压
1 2
| tar zxvf mysql-5.7.12-linux-glibc2.5-x86_64.tar.gz mv mysql-5.7.12-linux-glibc2.5-x86_64 /usr/local/mysql
|
初始化
1 2 3 4 5
| useradd -M -s /sbin/nologin mysql mkdir -p /data/mysql chown mysql /data/mysql cd /usr/local/mysql ./bin/mysqld --initialize --user=mysql --datadir=/data/mysql
|
注意,这一步最后一行会有一个提示
1
| [Note] A temporary password is generated for root@localhost: B*s1i(*,kXwg
|
最后面的字符串为root密码
1
| ./bin/mysql_ssl_rsa_setup --datadir=/data/mysql
|
拷贝配置文件和启动脚本
1 2 3 4 5 6 7 8 9 10 11
| cp support-files/my-default.cnf /etc/my.cnf vim /etc/my.cnf //编辑或者修改 basedir = /usr/local/mysql datadir = /data/mysql port = 3306 socket = /tmp/mysql.sock cp support-files/mysql.server /etc/init.d/mysqld vi /etc/init.d/mysqld //编辑或者修改 basedir=/usr/local/mysql datadir=/data/mysql
|
启动服务
1
| /etc/init.d/mysqld start
|
设置root密码
使用初始化密码登录
1 2
| /usr/local/mysql/bin/mysql -uroot -p'B*s1i(*,kXwg' //进入后直接设置密码 mysql>set password = password('mypass'); //一定要设置一下新密码
|
退出来,再使用新的密码登录就可以了
还有一种情况,就是不知道初始化密码
在 [mysql] 下面增加一行
重启mysql
1
| /etc/init.d/mysqld restart
|
这时登录mysql不需要密码,进入mysql重新设置root密码
1 2
| /usr/local/mysql/bin/mysql -uroot mysql> update user set authentication_string=password('123333') where user='root';
|
退出来后,更改my.cnf,去掉刚加的skip-grant-tables
再次重启mysql
1
| /etc/init.d/mysqld restart
|
此时就可以使用新的密码登录了。